<script>
import mapData from '../assets/data.json'
export default {
  props: ["tag_1"],
  render: function (createElement) {
    return createElement("div", {
      attrs: {
        id: "main",
      },
      style: {
        height: "600px",
      },
    });
  },
  data() {
    return {
      mapData,
      dataList: [],
      max_value:0
    };
  },
  methods: {
    initEchart() {
        if (this.tag_1==0) {
            this.max_value = 100;
        }
         if (this.tag_1==1) {
            this.max_value = 5000;
        }
      var myChart = echarts.init(document.getElementById("main"));
      var option = {
        tooltip: {
          //数据格式化
          formatter: function (params, callback) {
            return (
              params.seriesName + "<br />" + params.name + "：" + params.value
            );
          },
        },
        visualMap: {
          min: 0,
          max: this.max_value,
          left: "left",
          top: "bottom",
          text: ["高", "低"], //取值范围的文字
          inRange: {
            color: ["#e0ffff", "red"], //取值范围的颜色
          },
          show: true, //图注
        },
        geo: {
          map: "china",
          roam: false, //不开启缩放和平移
          zoom: 1.23, //视角缩放比例
          label: {
            normal: {
              show: true,
              fontSize: "10",
              color: "rgba(0,0,0,0.7)",
            },
          },
          itemStyle: {
            normal: {
              borderColor: "rgba(0, 0, 0, 0.2)",
            },
            emphasis: {
              areaColor: "yellow", //鼠标选择区域颜色
              shadowOffsetX: 0,
              shadowOffsetY: 0,
              shadowBlur: 20,
              borderWidth: 0,
              shadowColor: "rgba(0, 0, 0, 0.5)",
            },
          },
        },
        // 鼠标悬浮提示框
        series: [
          {
            name: "省份",
            type: "map",
            geoIndex: 0,
            data: this.dataList,
          },
        ],
      };
      myChart.setOption(option);
      myChart.on("click", function (params) {
        alert(params.name);
      });
    },
    changeData(val) {
      //映射(下面)
      if (val == 0) {
        let res = this.mapData.data.list.map((item) => {
          return {
            name: item.name,
            value: item.econNum,
          };
        });
        this.dataList = res;
      } else if (val == 1) {
        let res = this.mapData.data.list.map((item) => {
          return {
            name: item.name,
            value: item.value,
          };
        });
        this.dataList = res;
      }

      
    },
  },
  watch: {
    tag_1: function () {
      this.changeData(this.tag_1);
      this.initEchart();
    },
    deep: true,
  },
  mounted() {
    this.changeData(this.tag_1);
    //绘制地图
    this.initEchart();
  },
};
</script>